package com.ruoyi.system.mapper;

import com.ruoyi.system.domain.Dept;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 单位信息Mapper接口
 * 
 * @author ruoyi
 * @date 2022-12-08
 */
@Mapper
public interface DeptMapper 
{
    /**
     * 查询单位信息
     * 
     * @param id 单位信息主键
     * @return 单位信息
     */
    public Dept selectDeptById(String id);

    /**
     * 查询单位信息列表
     * 
     * @param dept 单位信息
     * @return 单位信息集合
     */
    public List<Dept> selectDeptList(Dept dept);

    /**
     * 新增单位信息
     * 
     * @param dept 单位信息
     * @return 结果
     */
    public int insertDept(Dept dept);

    /**
     * 修改单位信息
     * 
     * @param dept 单位信息
     * @return 结果
     */
    public int updateDept(Dept dept);

    /**
     * 删除单位信息
     * 
     * @param id 单位信息主键
     * @return 结果
     */
    public int deleteDeptById(String id);

    /**
     * 批量删除单位信息
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteDeptByIds(String[] ids);

    /**
     * 查询单位信息列表custom
     *
     * @param dept 单位信息
     * @return 单位信息集合
     */
    public List<Map<String,Object>> selectDeptListCustom(Dept dept);

    List<Dept> selectDeptTreeList();
    /**
     * 单位拨款详情 单位list
     *
     * @param map
     * @return 单位list
     */
    List<Map> selectJingfeiDeptList(Map<String, Object> map);

    Dept checkDeptInfo(Long userId);


    List<Map<String, Object>> bindQushiquerenDeptList(@Param("deptid") String deptid,@Param("danweimingcheng") String danweimingcheng);
    List<Map<String, Object>> bindQushiquerenDeptListself(@Param("deptid") String deptid,@Param("danweimingcheng") String danweimingcheng);

    List<Map<String, Object>> selectZhanghaoxinxi(@Param("deptid") String deptid,@Param("ZJZXOldDeptId") String ZJZXOldDeptId);

    List<Dept> XiaoxideptTreeList(@Param("olddeptid") String olddeptid,@Param("parentid") String parentid);

    List<Map<String,Object>> searchDiqu(@Param("diqu") String diqu);

    List<Dept> deptsearch(String jigoumingcheng);
}
